package com.qf.tenant.controller;

import com.qf.tenant.dto.TenantDto;
import com.qf.tenant.entity.Tenant;
import com.qf.tenant.service.TenantService;
import com.qf.utils.JWTUtil;
import com.qf.vo.R;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;

/**
 * <p>
 * 租户表 前端控制器
 * </p>
 *
 * @author wxh
 * @since 2023-10-28
 */
@RestController
@RequestMapping("/tenant")
@CrossOrigin
public class TenantController {
    @Autowired
    private TenantService tenantService;

    /**
     * 登录接口
     * @param tenant
     * @return
     */
    @PostMapping("login")
    public R login(@RequestBody Tenant tenant){
        return tenantService.tenantLogin(tenant);
    }

    /**
     * 校验令牌
     * @param token
     * @return
     */
    @GetMapping("verifyToken")
    public R verifyToken(@RequestHeader("token") String token){
        //如果没报错就
        Tenant tenant = JWTUtil.verifyToken(token);
        if (tenant == null) {
            return R.fail();
        }
        return R.ok();
    }

    @PostMapping("/register")
    public R register(@RequestBody TenantDto<Tenant> tenantDto){
        return tenantService.tenantRegister(tenantDto);
    }

}
